home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2000 #4 / Amiga Plus CD - 2000 - No. 4.iso / Tools / Dev / RenderLib / include / clib / render_protos.h next >
C/C++ Source or Header  |  1999-05-19  |  5KB  |  126 lines

  1. #ifndef CLIB_RENDER_H
  2. #define CLIB_RENDER_H
  3. /*
  4. **    $VER: render_protos.h v29.1 (19.5.99)
  5. **
  6. **    C prototype definitions
  7. **
  8. **    © TEK neoscientists
  9. */
  10.  
  11. #ifndef    GRAPHICS_GFX_H
  12. #include <graphics/gfx.h>
  13. #endif
  14.  
  15. #ifndef    UTILITY_HOOKS_H
  16. #include <utility/hooks.h>
  17. #endif
  18.  
  19. #ifndef UTILITY_TAGITEM_H
  20. #include <utility/tagitem.h>
  21. #endif
  22.  
  23. /*   private functions: */
  24.  
  25. void    TurboFillMem( APTR,ULONG,UBYTE );
  26. void    TurboCopyMem( APTR,APTR,ULONG );
  27. ULONG     *CreateHistogramPointerArray( APTR );
  28. ULONG    CountHistogram( APTR );
  29. ULONG    GetPaletteAttrs( APTR, ULONG);
  30. void    RemapArrayA(UBYTE *source, UWORD width, UWORD height, UBYTE *dest, UBYTE *pentab, struct TagItem *);
  31. void    RemapArray(UBYTE *source, UWORD width, UWORD height, UBYTE *dest, UBYTE *pentab, Tag, ... );
  32.  
  33.  
  34. /*   public functions:  */
  35.  
  36. APTR    CreateRMHandlerA( struct TagItem * );
  37. APTR    CreateRMHandler( Tag, ... );
  38. void    DeleteRMHandler( APTR );
  39. APTR    AllocRenderMem( APTR, ULONG );
  40. void    FreeRenderMem( APTR, APTR, ULONG );
  41. APTR    AllocRenderVec( APTR, ULONG );
  42. void    FreeRenderVec( APTR );
  43. APTR    AllocRenderVecClear( APTR, ULONG );
  44.  
  45. APTR    CreateHistogramA( struct TagItem * );
  46. APTR    CreateHistogram( Tag, ... );
  47. void    DeleteHistogram(APTR);
  48. ULONG    QueryHistogram( APTR, Tag );
  49. ULONG    AddRGB( APTR, ULONG, ULONG );
  50. ULONG    AddRGBImageA( APTR, ULONG *, UWORD, UWORD, struct TagItem * );
  51. ULONG    AddRGBImage( APTR, ULONG *, UWORD, UWORD, Tag, ... );
  52. ULONG    AddChunkyImageA( APTR, UBYTE *, UWORD, UWORD, APTR, struct TagItem * );
  53. ULONG    AddChunkyImage( APTR, UBYTE *, UWORD, UWORD, APTR, Tag, ... );
  54. ULONG    ExtractPaletteA( APTR, ULONG *, UWORD, struct TagItem * );
  55. ULONG    ExtractPalette( APTR, ULONG *, UWORD, Tag, ... );
  56. ULONG    RenderA( ULONG *, UWORD, UWORD, UBYTE *, APTR, struct TagItem * );
  57. ULONG    Render( ULONG *, UWORD, UWORD, UBYTE *, APTR, Tag, ... );
  58.  
  59. void    Planar2ChunkyA( PLANEPTR *, UWORD, UWORD, UWORD, UWORD, UBYTE *, struct TagItem * );
  60. void    Planar2Chunky( PLANEPTR *, UWORD, UWORD, UWORD, UWORD, UBYTE *, Tag, ... );
  61. ULONG    Chunky2RGBA( UBYTE *, UWORD, UWORD, ULONG *, APTR, struct TagItem * );
  62. ULONG    Chunky2RGB( UBYTE *, UWORD, UWORD, ULONG *, APTR, Tag, ... );
  63. void    Chunky2BitMapA( UBYTE *, UWORD, UWORD, UWORD, UWORD, struct BitMap *, UWORD, UWORD, struct TagItem * );
  64. void    Chunky2BitMap( UBYTE *, UWORD, UWORD, UWORD, UWORD, struct BitMap *, UWORD, UWORD, Tag, ... );
  65.  
  66. APTR    CreateScaleEngineA( UWORD, UWORD, UWORD, UWORD, struct TagItem * );
  67. APTR    CreateScaleEngine( UWORD, UWORD, UWORD, UWORD, Tag, ... );
  68. void    DeleteScaleEngine( APTR );
  69. ULONG    ScaleA( APTR, APTR, APTR, struct TagItem * );
  70. ULONG    Scale( APTR, APTR, APTR, Tag, ... );
  71.  
  72. ULONG    ConvertChunkyA( UBYTE *, APTR, UWORD, UWORD, UBYTE *, APTR, struct TagItem * );
  73. ULONG    ConvertChunky( UBYTE *, APTR, UWORD, UWORD, UBYTE *, APTR, Tag, ... );
  74. void    CreatePenTableA( UBYTE *, APTR, UWORD, UWORD, APTR, UBYTE *, struct TagItem * );
  75. void    CreatePenTable( UBYTE *, APTR, UWORD, UWORD, APTR, UBYTE *, Tag, ... );
  76.  
  77. APTR    CreatePaletteA( struct TagItem * );
  78. APTR    CreatePalette( Tag, ... );
  79. void    DeletePalette( APTR );
  80. void    ImportPaletteA( APTR, APTR, UWORD, struct TagItem * );
  81. void    ImportPalette( APTR, APTR, UWORD, Tag, ... );
  82. void    ExportPaletteA( APTR, APTR, struct TagItem * );
  83. void    ExportPalette( APTR, APTR, Tag, ... );
  84. void    FlushPalette( APTR );
  85. ULONG    SortPaletteA( APTR, ULONG, struct TagItem * );
  86. ULONG    SortPalette( APTR, ULONG, Tag, ... );
  87.  
  88. ULONG    CountRGB( APTR, ULONG );
  89. LONG    BestPen( APTR, ULONG );
  90.  
  91. ULONG    AddHistogramA( APTR, APTR, struct TagItem * );
  92. ULONG    AddHistogram( APTR, APTR, Tag, ... );
  93.  
  94. UWORD    ScaleOrdinate( UWORD, UWORD, UWORD );
  95.  
  96. APTR    CreateMapEngineA( APTR, struct TagItem * );
  97. APTR    CreateMapEngine( APTR, Tag, ... );
  98. void    DeleteMapEngine( APTR );
  99. ULONG    MapRGBArrayA( APTR, ULONG *, UWORD, UWORD, UBYTE *, struct TagItem * );
  100. ULONG    MapRGBArray( APTR, ULONG *, UWORD, UWORD, UBYTE *, Tag, ... );
  101. ULONG    MapChunkyArrayA( APTR, UBYTE *, APTR, UWORD, UWORD, UBYTE *, struct TagItem * );
  102. ULONG    MapChunkyArray( APTR, UBYTE *, APTR, UWORD, UWORD, UBYTE *, Tag, ... );
  103.  
  104. LONG    RGBArrayDiversityA(ULONG *, UWORD, UWORD, struct TagItem * );
  105. LONG    RGBArrayDiversity(ULONG *, UWORD, UWORD, Tag, ... );
  106.  
  107. LONG    ChunkyArrayDiversityA(UBYTE *, APTR, UWORD, UWORD, struct TagItem *);
  108. LONG    ChunkyArrayDiversity(UBYTE *, APTR, UWORD, UWORD, Tag, ... );
  109.  
  110. void    InsertAlphaChannelA(UBYTE *, UWORD, UWORD, ULONG *, struct TagItem *);
  111. void    InsertAlphaChannel(UBYTE *, UWORD, UWORD, ULONG *, Tag, ... );
  112. void    ExtractAlphaChannelA(ULONG *, UWORD, UWORD, UBYTE *, struct TagItem *);
  113. void    ExtractAlphaChannel(ULONG *, UWORD, UWORD, UBYTE *, Tag, ... );
  114. void    ApplyAlphaChannelA(ULONG *, UWORD, UWORD, ULONG *, struct TagItem *);
  115. void    ApplyAlphaChannel(ULONG *, UWORD, UWORD, ULONG *, Tag, ... );
  116. void    MixRGBArrayA(ULONG *, UWORD, UWORD, ULONG *, UWORD, struct TagItem *);
  117. void    MixRGBArray(ULONG *, UWORD, UWORD, ULONG *, UWORD, Tag, ... );
  118. void    CreateAlphaArrayA(ULONG *, UWORD, UWORD, struct TagItem *);
  119. void    CreateAlphaArray(ULONG *, UWORD, UWORD, Tag, ... );
  120. void    MixAlphaChannelA(ULONG *, ULONG *, UWORD, UWORD, ULONG *, struct TagItem *);
  121. void    MixAlphaChannel(ULONG *, ULONG *, UWORD, UWORD, ULONG *, Tag, ... );
  122. void    TintRGBArrayA(ULONG *, UWORD, UWORD, ULONG, UWORD, ULONG *, struct TagItem *);
  123. void    TintRGBArray(ULONG *, UWORD, UWORD, ULONG, UWORD, ULONG *, Tag, ... );
  124.  
  125. #endif
  126.